Enabling searching of user ratings and reviews using user profile location, and social networks

ABSTRACT

A system and method are directed towards a free-form search query of user reviews using user profile, location information, and/or social networks, to obtain a result having an associated universal aggregated rating. The user may enter in free-form a search query that may then be transparently modified using the user&#39;s profile, social network, and/or current physical location. The search results may then be presented to the user along with aggregated weighted ratings. The user may also enter products and/or services into a data store, including comments, and a universal rating. In one embodiment, the user may provide a tag to another reviewer&#39;s comments that may be useable to aggregate ratings. In one embodiment, the user&#39;s profile, location, and/or social networking information may be used to further annotate the user&#39;s inputs.

TECHNICAL FIELD

The present invention relates generally to search queries over a networkand, more particularly, but not exclusively, to refining a free-formsearch query by employing a user profile, location information, and/orsocial network information, to modifying at least one search query termto obtain a result having a universal aggregated rating.

BACKGROUND

A typical shopper today may use multiple sources of information to makea decision about what to buy, where to eat, what merchant or business touse, even where to hold a child's birthday party. For example, today'sshopper may perform an on-line web search, visit a brick-and-mortarstore, or even ask friends, family members, or the like to obtaininformation.

While more and more shoppers may be turning to on-line based searches,historically, such searches have been unable to supplant the roles takenby browsing in a physical store, or asking friends for recommendations.At least one reason for this may be that today's on-line based searchestend to lend themselves to focused searches when the shopper is fairlyclear on what they want to buy. However, less focused “browsing” remainschallenging for the on-line shopper, often providing confusing andsometimes useless results. For example, a shopper that may not know alot about cameras, may still frequent a particular store to check outthe camera selection, even if their intended purchase is from adifferent store, or ultimately over the Internet. Internet browsing,however, may result in a large quantity of time spent at the wrongwebsites, less informative websites, or the like. Thus, the kind ofbrowsing done in a brick-and-mortar store that may lead to buying hasoften been difficult to transfer to the Internet.

Moreover, although a shopper may conduct their research for a purchaseon-line, many shoppers will still seek out and consult with theirfriends regarding the proposed purchase. This may be the case, in spiteof finding plenty of reviews from “experts.” This phenomenon may arisebecause shoppers still seek an opinion from someone they know and trust,and may share their “frame of reference.”

In addition, performing a search query for user relevant information mayremain cumbrous. For example, products, and reviews and ratings ofproducts may be arranged predominately by product or by a myriad ofdifferent companies that may provide the product or service. However, itis often difficult to find a review relevant to what the shopper maywant, unless the shopper already has a specific product or company inmind. Thus, the shopper might have to perform several search queries toobtain relevant search results. Irrelevant search results mean that theshopper is less likely to find when they are looking for, which in turnmay translate into lost opportunities for merchants, or otherbusinesses, to prosper from the on-line shopping experience.

Once the shopper has selected to purchase the product or service, it maynot be easy to provide their opinion about their purchase on-line. Forexample, the shopper has to choose between the store they purchasedfrom, other stores, or a myriad of websites to provide their opinion.Unfortunately, other websites where the product is also advertised maynot have access to the shopper's opinion. Thus, future searchers mightnot ever be aware of the shopper's purchase experience. Therefore, manybusinesses and shoppers are searching for new ways to make searchresults and feedback mechanisms more relevant to the shopper. Thus, itis with respect to these considerations and others that the presentinvention has been made.

BRIEF DESCRIPTION OF THE DRAWINGS

Non-limiting and non-exhaustive embodiments of the present invention aredescribed with reference to the following drawings. In the drawings,like reference numerals refer to like parts throughout the variousfigures unless otherwise specified.

For a better understanding of the present invention, reference will bemade to the following Detailed Description, which is to be read inassociation with the accompanying drawings, wherein:

FIG. 1 is a system diagram of one embodiment of an environment in whichthe invention may be practiced;

FIG. 2 shows one embodiment of a client device that may be included in asystem implementing the invention;

FIG. 3 shows one embodiment of a network device that may be useable as auniversal search & ratings server;

FIG. 4 illustrates a logical flow diagram generally showing oneembodiment of an overview process for managing free-form context basedsearches and ratings;

FIG. 5 illustrates a logical flow diagram generally showing oneembodiment of an overview process for managing free-form context basedsearch queries;

FIG. 6 illustrates a logical flow diagram generally showing oneembodiment of a process for managing free-form context based ratings;and

FIG. 7 illustrates a screen shot of one embodiment of a possiblefree-form input box, in accordance with the present invention.

DETAILED DESCRIPTION

The present invention now will be described more fully hereinafter withreference to the accompanying drawings, which form a part hereof, andwhich show, by way of illustration, specific embodiments by which theinvention may be practiced. This invention may, however, be embodied inmany different forms and should not be construed as limited to theembodiments set forth herein; rather, these embodiments are provided sothat this disclosure will be thorough and complete, and will fullyconvey the scope of the invention to those skilled in the art. Amongother things, the present invention may be embodied as methods ordevices. Accordingly, the present invention may take the form of anentirely hardware embodiment, an entirely software embodiment or anembodiment combining software and hardware aspects. The followingdetailed description is, therefore, not to be taken in a limiting sense.

Throughout the specification and claims, the following terms take themeanings explicitly associated herein, unless the context clearlydictates otherwise. The phrase “in one embodiment” as used herein doesnot necessarily refer to the same embodiment, though it may.Furthermore, the phrase “in another embodiment” as used herein does notnecessarily refer to a different embodiment, although it may. Thus, asdescribed below, various embodiments of the invention may be readilycombined, without departing from the scope or spirit of the invention.

In addition, as used herein, the term “or” is an inclusive “or”operator, and is equivalent to the term “and/or,” unless the contextclearly dictates otherwise. The term “based on” is not exclusive andallows for being based on additional factors not described, unless thecontext clearly dictates otherwise. In addition, throughout thespecification, the meaning of “a,” “an,” and “the” include pluralreferences. The meaning of “in” includes “in” and “on.”

As used herein, the term “social network” refers to a concept that anindividual's personal network of friends, family colleagues, coworkers,and the subsequent connections within those networks, can be utilized tofind more relevant connections for a variety of activities, including,but not limited to dating, job networking, service referrals, contentsharing, like-minded individuals, activity partners, or the like.

An online social network typically comprises a person's set of directand/or indirect personal relationships, including real and virtualprivileges and permissions that users may associate with these people.Direct personal relationships usually include relationships with peoplethe user can communicated with directly, including family members,friends, colleagues, coworkers, and other people with which the personhas had some form of direct contact, such as contact in person, bytelephone, by email, by instant message, by letter, or the like. Thesedirect personal relationships are sometimes referred to as first-degreerelationships. First-degree relationships can have varying degrees ofcloseness, trust, and other characteristics.

Indirect personal relationships typically include relationships throughfirst-degree relationships to people with whom a person has not had someform of direct or limited direct contact, such as in being cc'd on ane-mail message, or the like. For example, a friend of a friendrepresents an indirect personal relationship. A more extended, indirectrelationship might be a friend of a friend of a friend. These indirectrelationships are sometimes characterized by a degree of separationbetween the people. For instance, a friend of a friend can becharacterized as two degrees of separation or a second-degreerelationship. Similarly, a friend of a friend of a friend can becharacterized as three degrees of separation or a third-degreerelationship.

Briefly stated the present invention is directed towards using afree-form search query of user ratings and reviews and employing a userprofile, location information, and/or social network information tomodify at least one search query term to obtain a result having anassociated universal aggregated rating. In one embodiment, a user mayprovide a free form search query. In one embodiment, the search querycomprises a list of associated words. In one embodiment, a user'sprofile, about the user, and/or the user's social network may beemployed to modify the search query. For example, where the user seeksto purchase a product at a store, but forgot a brand type of theproduct, the user's profile, and/or information within the user's socialnetwork, may be used to transparently modify the search query. In oneembodiment, the user's current physical location may also be used totransparently modify the search query, such as identifying a city, astore location, or the like, as part of the search query. In oneembodiment, the user may also provide an input to modify the search,based on location, a specific sub-set of their social network, or thelike.

The search may then be performed upon a data store that is based on anaggregated rating score and review that may be determined from word orphrase commonality between the search terms and terms within reviews inthe data store. A search result may then be presented to the user alongwith aggregated weighted ratings. In one embodiment, the search resultmay include access to comments provided by the reviewers.

The user may also enter a product and/or service information into thedata store, including comments, and a universal rating for the productand/or service. In one embodiment, the user may provide a tag to anotherreviewer's comments that may be useable to aggregate ratings. In oneembodiment, the user's profile, location, and/or social networkinginformation may be used to further annotate the user's inputs.

Illustrative Operating Environment

FIG. 1 shows components of one embodiment of an environment in which theinvention may be practiced. Not all the components may be required topractice the invention, and variations in the arrangement and type ofthe components may be made without departing from the spirit or scope ofthe invention. As shown, system 100 of FIG. 1 includes local areanetworks (“LANs”)/wide area networks (“WANs”)−(network) 105, wirelessnetwork 110, Universal Search & Rating (USR) server 106, client devices101-104, and content server 107.

Mobile devices 102-104 may include virtually any portable computingdevice capable of receiving and sending a message over a network, suchas network 105, wireless network 110, or the like. Mobile devices102-104 may also be described generally as client devices that areconfigured to be portable. Thus, mobile devices 102-104 may includevirtually any portable computing device capable of connecting to anothercomputing device and receiving information. Such devices includeportable devices such as, cellular telephones, smart phones, displaypagers, radio frequency (RF) devices, infrared (IR) devices, PersonalDigital Assistants (PDAs), handheld computers, laptop computers,wearable computers, tablet computers, integrated devices combining oneor more of the preceding devices, and the like. As such, mobile devices102-104 typically range widely in terms of capabilities and features.For example, a cell phone may have a numeric keypad and a few lines ofmonochrome LCD display on which only text may be displayed. In anotherexample, a web-enabled mobile device may have a touch sensitive screen,a stylus, and several lines of color LCD display in which both text andgraphics may be displayed.

A web-enabled mobile device may include a browser application that isconfigured to receive and to send web pages, web-based messages, and thelike. The browser application may be configured to receive and displaygraphics, text, multimedia, and the like, employing virtually any webbased language, including a wireless application protocol messages(WAP), and the like. In one embodiment, the browser application isenabled to employ Handheld Device Markup Language (HDML), WirelessMarkup Language (WML), WMLScript, JavaScript, Standard GeneralizedMarkup Language (SMGL), HyperText Markup Language (HTML), eXtensibleMarkup Language (XML), and the like, to display and send a message. Inone embodiment, a user of the mobile device may employ the browserapplication to perform a search over a network. However, anotherapplication may also be used to perform a search over the network.

Mobile devices 102-104 also may include at least one other clientapplication that is configured to receive content from another computingdevice. The client application may include a capability to provide andreceive textual content, graphical content, audio content, and the like.The client application may further provide information that identifiesitself, including a type, capability, name, and the like. In oneembodiment, mobile devices 102-104 may uniquely identify themselvesthrough any of a variety of mechanisms, including a phone number, MobileIdentification Number (MIN), an electronic serial number (ESN), or othermobile device identifier. The information may also indicate a contentformat that the mobile device is enabled to employ. Such information maybe provided in a message, or the like, sent to USR server 106, clientdevice 101, or other computing devices.

In one embodiment, mobile devices 102-104 may also provide a currentphysical location to another computing device. In one embodiment, mobiledevices 102-104 may provide the current physical location information interms of a latitude and longitude, or the like. However, mobile devices102-104 may also provide other information that may be employed todetermine a current physical location of the device, including forexample, a MAC address, IP address, or the like. Such locationinformation may be provided in a separate message, sent as part ofanother message, or even as a combination of the above. In oneembodiment, physical location information may be provided on demand, orbased on a time period, an event, or the like.

Mobile devices 102-104 may further be configured to include a clientapplication that enables the end-user to log into an end-user accountthat may be managed by another computing device, such as USR server 106,or the like. Such end-user account, for example, may be configured toenable the end-user to receive emails, send/receive IM messages, SMSmessages, access selected web pages, enter a user profile, participatein a social networking activity, perform search queries, or the like.However, participation in various social networking activities;performing search queries; providing ratings of a product, business,service, or the like; as well as other communication activities, mayalso be performed without logging into the end-user account.

Client device 101 may include virtually any computing device capable ofcommunicating over a network to send and receive information, includingsocial networking information, performing search queries, or the like.Client device 101 may also include client applications, browserapplications, messaging applications, and the like, such as thosedescribed above, as well as being configured to provide locationinformation. Such location information may include, but is not limitedto a network address from which a physical location may be determined, aphysical location, or even an account, user name, or the like, fromwhich a location may be determined.

The set of such devices may include devices that typically connect usinga wired or wireless communications medium such as personal computers,multiprocessor systems, microprocessor-based or programmable consumerelectronics, network PCs, or the like.

Wireless network 110 is configured to couple mobile devices 102-104 andits components with network 105. Wireless network 110 may include any ofa variety of wireless sub-networks that may further overlay stand-alonead-hoc networks, and the like, to provide an infrastructure-orientedconnection for mobile devices 102-104. Such sub-networks may includemesh networks, Wireless LAN (WLAN) networks, cellular networks, and thelike.

Wireless network 110 may further include an autonomous system ofterminals, gateways, routers, and the like connected by wireless radiolinks, and the like. These connectors may be configured to move freelyand randomly and organize themselves arbitrarily, such that the topologyof wireless network 110 may change rapidly.

Wireless network 110 may further employ a plurality of accesstechnologies including 2nd (2G), 3rd (3G) generation radio access forcellular systems, WLAN, Wireless Router (WR) mesh, and the like. Accesstechnologies such as 2G, 3G, and future access networks may enable widearea coverage for mobile devices, such as mobile devices 102-104 withvarious degrees of mobility. For example, wireless network 110 mayenable a radio connection through a radio network access such as GlobalSystem for Mobil communication (GSM), General Packet Radio Services(GPRS), Enhanced Data GSM Environment (EDGE), Wideband Code DivisionMultiple Access (WCDMA), and the like. In essence, wireless network 110may include virtually any wireless communication mechanism by whichinformation may travel between mobile device s 102-104 and anothercomputing device, network, and the like.

Network 105 is configured to couple USR server 106 and its componentswith other computing devices, including, client device 101, and throughwireless network 110 to mobile devices 102-104. Network 105 is enabledto employ any form of computer readable media for communicatinginformation from one electronic device to another. Also, network 105 caninclude the Internet in addition to local area networks (LANs), widearea networks (WANs), direct connections, such as through a universalserial bus (USB) port, other forms of computer-readable media, or anycombination thereof. On an interconnected set of LANs, including thosebased on differing architectures and protocols, a router acts as a linkbetween LANs, enabling messages to be sent from one to another. Also,communication links within LANs typically include twisted wire pair orcoaxial cable, while communication links between networks may utilizeanalog telephone lines, full or fractional dedicated digital linesincluding T1, T2, T3, and T4, Integrated Services Digital Networks(ISDNs), Digital Subscriber Lines (DSLs), wireless links includingsatellite links, or other communications links known to those skilled inthe art. Furthermore, remote computers and other related electronicdevices could be remotely connected to either LANs or WANs via a modemand temporary telephone link. In essence, network 105 includes anycommunication method by which information may travel between USR server106, client device 101, and other computing devices.

Additionally, communication media typically embodies computer-readableinstructions, data structures, program modules, or other transportmechanism and includes any information delivery media. The terms“modulated data signal,” and “carrier-wave signal” include a signal thathas one or more of its characteristics set or changed in such a manneras to encode information, instructions, data, and the like, in thesignal. By way of example, communication media includes wired media suchas twisted pair, coaxial cable, fiber optics, wave guides, and otherwired media and wireless media such as acoustic, RF, infrared, and otherwireless media.

One embodiment of USR server 106 is described in more detail below inconjunction with FIG. 3. Briefly, however, USR server 106 may includeany computing device capable of connecting to network 105 to enableaggregation and management of social networking information, review andrating information for a product, service, business, or the like, and toreceive and perform refined search queries employing at least some ofthe social networking, review/rating information, location information,and/or a user profile.

USR server 106 may receive from various participants in a socialnetwork, information including information associated with activities,events, messages, communications, address books, buddy lists, or thelike. USR server 106 may also receive social networking information froma variety of other sources including, for example, content server 107.USR server 106 may store at least some of the received information foruse in generating a location refined search query.

USR server 106 may also receive user profile information from a user.Such user profile information may include, but is not limited to auser's fixed location, address, age, gender, name, avatar, employment,hobbies, or the like. In one embodiment, the user may be presented witha survey that may be useable to obtain additional information about theuser. In one embodiment, the user may also provide information aboutfriends, family, or other social networking relationships. For example,the user may provide an address book, buddy list, contact list, or thelike. In addition, in one embodiment, USR server 106 may monitor on-lineactivities of the user to determine social networking relationships,update contact lists, or the like.

USR server 106 may be configured to receive a request for a search. Inone embodiment, the search may be provided in a free-form context. USRserver 106 may then parse the search query into one or more sub-phrases.USR server 106 may also employ the location modifiers, user profileinformation, and/or social networking information, to refine the searchquery. USR server 106 may then perform the modified search on a datastore that includes aggregated review and ratings data for variousproducts and/or services. However, the data store is not constrained toenabling searches on products and/or services. For example, the datastore may be configured to enable searches for locations. For example,the data store may enable searches based on such questions as to whichlocal fire stations in a given city or town may provide tours for kid'sbirthday parties, or the like. In any event, USR server 106 may providea result based on weighted aggregated scores for the responses. Thus,USR server 106 enables a shopper to find and discover highly-rated itemsin arbitrary categories.

USR server 106 further provides an interface for a shopper to input areview and/or rating, and a mechanism for aggregating results over aplurality of users. Moreover, as mentioned above, it enables users tokeep track of products and/or services they have used and might useagain in a convenient and searchable location. Furthermore, theaggregated search results may be searchable based on a user's socialnetwork, profile, and/or social network. USR server 106 may employprocesses such as are described below in conjunction with FIGS. 4-6 toperform at least some of its actions.

Devices that may operate as USR server 106 include various networkdevices, including, but not limited to personal computers desktopcomputers, multiprocessor systems, microprocessor-based or programmableconsumer electronics, network PCs, servers, network appliances, and thelike.

Although FIG. 1 illustrates USR server 106 as a single computing device,the invention is not so limited. For example, one or more functions ofUSR server 106 may be distributed across one or more distinct computingdevices. For example, managing various social networking activitiesand/or performing modified search queries, may be performed by aplurality of computing devices, without departing from the scope orspirit of the present invention.

Content server 107 represents a variety of content and/or that mayuseable client devices 101-104. Such services include, but are notlimited to web services, third-party services, audio services, videoservices, email services, merchant services, calendaring services, photoservices, or the like. Moreover, information about the content and/orservices provided by content server 107 may be employed to provideresults to a search query.

Devices that may operate as content server 107 include personalcomputers desktop computers, multiprocessor systems,microprocessor-based or programmable consumer electronics, network PCs,servers, and the like.

Illustrative Mobile Client Environment

FIG. 2 shows one embodiment of client device 200 that may be included ina system implementing the invention. Client device 200 may include manymore or less components than those shown in FIG. 2. However, thecomponents shown are sufficient to disclose an illustrative embodimentfor practicing the present invention. Client device 200 may represent,for example, one embodiment of at least one of client devices 101-104 ofFIG. 1.

As shown in the figure, client device 200 includes a processing unit(CPU) 222 in communication with a mass memory 230 via a bus 224. Clientdevice 200 also includes a power supply 226, one or more networkinterfaces 250, an audio interface 252, a display 254, a keypad 256, anilluminator 258, an input/output interface 260, an optional hapticinterface 262, and an optional global positioning systems (GPS) receiver264. Power supply 226 provides power to client device 200. Arechargeable or non-rechargeable battery may be used to provide power.The power may also be provided by an external power source, such as anAC adapter or a powered docking cradle that supplements and/or rechargesa battery.

Client device 200 may optionally communicate with a base station (notshown), or directly with another computing device. Network interface 250includes circuitry for coupling client device 200 to one or morenetworks, and is constructed for use with one or more communicationprotocols and technologies including, but not limited to, global systemfor mobile communication (GSM), code division multiple access (CDMA),time division multiple access (TDMA), user datagram protocol (UDP),transmission control protocol/Internet protocol (TCP/IP), SMS, generalpacket radio service (GPRS), WAP, ultra wide band (UWB), IEEE 802.16Worldwide Interoperability for Microwave Access (WiMax), SIP/RTP, or anyof a variety of other wireless communication protocols. Networkinterface 250 is sometimes known as a transceiver, transceiving device,or network interface card (NIC).

Audio interface 252 is arranged to produce and receive audio signalssuch as the sound of a human voice. For example, audio interface 252 maybe coupled to a speaker and microphone (not shown) to enabletelecommunication with others and/or generate an audio acknowledgementfor some action. Display 254 may be a liquid crystal display (LCD), gasplasma, light emitting diode (LED), or any other type of display usedwith a computing device. Display 254 may also include a touch sensitivescreen arranged to receive input from an object such as a stylus or adigit from a human hand.

Keypad 256 may comprise any input device arranged to receive input froma user. For example, keypad 256 may include a push button numeric dial,or a keyboard. Keypad 256 may also include command buttons that areassociated with selecting and sending images. Illuminator 258 mayprovide a status indication and/or provide light. Illuminator 258 mayremain active for specific periods of time or in response to events. Forexample, when illuminator 258 is active, it may backlight the buttons onkeypad 256 and stay on while the client device is powered. Also,illuminator 258 may backlight these buttons in various patterns whenparticular actions are performed, such as dialing another client device.Illuminator 258 may also cause light sources positioned within atransparent or translucent case of the client device to illuminate inresponse to actions.

Client device 200 also comprises an optional input/output interface 260for communicating with external devices, such as a headset, or otherinput or output devices not shown in FIG. 2. Input/output interface 260can utilize one or more communication technologies, such as USB,infrared, Bluetooth™, or the like. Haptic interface 262 is arranged toprovide tactile feedback to a user of the client device. For example,the haptic interface may be employed to vibrate client device 200 in aparticular way when another user of a computing device is calling.

Optional GPS transceiver 264 can determine the physical coordinates ofclient device 200 on the surface of the Earth, which typically outputs alocation as latitude and longitude values. GPS transceiver 264 can alsoemploy other geo-positioning mechanisms, including, but not limited to,triangulation, assisted GPS (AGPS), E-OTD, CI, SAI, ETA, BSS or thelike, to further determine the physical location of client device 200 onthe surface of the Earth. It is understood that under differentconditions, GPS transceiver 264 can determine a physical location withinmillimeters for client device 200; and in other cases, the determinedphysical location may be less precise, such as within a meter orsignificantly greater distances. In one embodiment, however, mobiledevice may through other components, provide other information that maybe employed to determine a physical location of the device, includingfor example, a MAC address, IP address, or the like.

Mass memory 230 includes a RAM 232, a ROM 234, and other storage means.Mass memory 230 illustrates another example of computer storage mediafor storage of information such as computer readable instructions, datastructures, program modules or other data. Mass memory 230 stores abasic input/output system (“BIOS”) 240 for controlling low-leveloperation of client device 200. The mass memory also stores an operatingsystem 241 for controlling the operation of client device 200. It willbe appreciated that this component may include a general purposeoperating system such as a version of UNIX, or LINUX™, or a specializedclient communication operating system such as Windows Mobile™, or theSymbian® operating system. The operating system may include, orinterface with a Java virtual machine module that enables control ofhardware components and/or operating system operations via Javaapplication programs.

Memory 230 further includes one or more data storage 244, which can beutilized by client device 200 to store, among other things, applications242 and/or other data. For example, data storage 244 may also beemployed to store information that describes various capabilities ofclient device 200. The information may then be provided to anotherdevice based on any of a variety of events, including being sent as partof a header during a communication, sent upon request, or the like.Moreover, data storage 244 may also be employed to store socialnetworking information including address books, buddy lists, aliases, orthe like. At least a portion of the social networking information mayalso be stored on a disk drive or other storage medium (not shown)within client device 200. Moreover, some of the social networkinginformation may be stored on a remote computing device and accessedthrough client device 200.

Applications 242 may include computer executable instructions which,when executed by client device 200, transmit, receive, and/or otherwiseprocess messages (e.g., SMS, MMS, IM, email, and/or other messages),audio, video, and enable telecommunication with another user of anotherclient device. Other examples of application programs include calendars,search programs, email clients, IM applications, SMS applications, VOIPapplications, contact managers, task managers, transcoders, databaseprograms, word processing programs, security applications, spreadsheetprograms, games, search programs, and so forth. One application shown inthe figure is browser 245.

Browser 245 may include virtually any application configured to receiveand display graphics, text, multimedia, and the like, employingvirtually any web based language. In one embodiment, the browserapplication is enabled to employ Handheld Device Markup Language (HDML),Wireless Markup Language (WML), WMLScript, JavaScript, StandardGeneralized Markup Language (SMGL), HyperText Markup Language (HTML),eXtensible Markup Language (XML), and the like, to display and send amessage. However, any of a variety of other web based languages may beemployed.

In one embodiment, browser 245 may be configured to enable access to asearch application, interface, or the like, such as might be availablethrough USR server 106 of FIG. 1. In one embodiment, a user of clientdevice 200 may input to the search application a variety of search termsfor use in obtaining a search results. Mobile device 245 may alsoprovide location information, or information useable in determining itsphysical location. Such location information, may, in one embodiment, beuseable to automatically (e.g., transparent to a user input) modify thesearch query.

Illustrative Server Environment

FIG. 3 shows one embodiment of a network device, according to oneembodiment of the invention. Network device 300 may include many more orless components than those shown. The components shown, however, aresufficient to disclose an illustrative embodiment for practicing theinvention. Network device 300 may represent, for example, USR server 106of FIG. 1.

Network device 300 includes processing unit 312, video display adapter314, and a mass memory, all in communication with each other via bus322. The mass memory generally includes RAM 316, ROM 332, and one ormore permanent mass storage devices, such as hard disk drive 328, tapedrive, optical drive, and/or floppy disk drive. The mass memory storesoperating system 320 for controlling the operation of network device300. Any general-purpose operating system may be employed. Basicinput/output system (“BIOS”) 318 is also provided for controlling thelow-level operation of network device 300. As illustrated in FIG. 3,network device 300 also can communicate with the Internet, or some othercommunications network, via network interface unit 310, which isconstructed for use with various communication protocols including theTCP/IP protocol. Network interface unit 310 is sometimes known as atransceiver, transceiving device, or network interface card (NIC).

The mass memory as described above illustrates another type ofcomputer-readable media, namely computer storage media. Computer storagemedia may include volatile, nonvolatile, removable, and non-removablemedia implemented in any method or technology for storage ofinformation, such as computer readable instructions, data structures,program modules, or other data. Examples of computer storage mediainclude RAM, ROM, EEPROM, flash memory or other memory technology,CD-ROM, digital versatile disks (DVD) or other optical storage, magneticcassettes, magnetic tape, magnetic disk storage or other magneticstorage devices, or any other medium which can be used to store thedesired information and which can be accessed by a computing device.

As shown, User Profiles (UDS) 351 may include a database, text,spreadsheet, folder, file, or the like, that may be configured tomaintain and store user profile information, including, but not limitedto social networking information, including, but not limited to contactinformation including a contact name and at least one address orphysical location associated with the contact name. The contact name mayinclude an alias, a user name, or the like. The address may include anemail address, an IM address, SMS address, a telephone number, IPaddress, or other information that may be useable to determine aphysical location for the contact name. User profile information mayinclude a user's preference of various products, services, or the like,age, employment, location information, gender, or the like. In oneembodiment, at least some of the user profile information may beobtained through a result of a survey that the user may participatewithin.

In one embodiment, contact information may also be from or within auser's IM friends list, a buddy list, an address book, email historylog, an IM conversation log, a VOIP store, or the like. However, thecontact information may also be obtained indirectly through monitoringvarious interactions of a user. Thus, for example, the contactinformation may be extracted based on content within a message betweenthe user and another member of a social network. For example, in oneembodiment, the user and the other member may include information abouta third person, or the like. Such third person information may also beobtained, in one embodiment, and stored within user profiles 351.Similarly, various network behavior of a user, or other socialnetworking member, may also be obtained, including, for example,websites visited, types of information searched for by the user, typesof content downloaded, where the content is downloaded from, or thelike. Information may also be obtained from another member's socialnetworking contact information which may be useable for modifying asearch by the user. Thus, second or higher degree of separationinformation may also be obtained from other members of the socialnetwork, and stored within user profiles 351. In one embodiment, suchinformation may be arranged and configured into a hierarchicalrelationship based, for example, on degrees of separation.

In one embodiment, location information based on a user's physicallocation, account registration information, or the like, may also bestored within user profiles 351. Such information may indicate that theuser resides in a particular town, neighborhood, city, or the like,within a particular county, state, country, or the like. Such locationinformation may also be configured and arranged, in one embodiment, in ahierarchical relationship.

Mass memory may further include search/rating data store 352.Search/rating data store 352 may include a database, text, spreadsheet,folder, file, or the like, that may be configured to maintain and storesearch terms and phrases provided by one or more users, includingproduct and/or service providers. In one embodiment, the search/ratingdata includes rating data provided by a user and/or product/serviceprovider. In another embodiment, at least some of the rating data may beaggregated over a plurality of inputs. In one embodiment, search/ratingdata store 352 may also include user entered tags that enable additionalsearches to be performed on the data. For example, a user may enter auser specific tag, or general use tag for an item in search/rating datastore 352. In one embodiment, the user specific tag may be identified tothe user through the user's profile, account identifier, or similaridentifier. Moreover, ratings may also be identified to the user thatprovided the rating. In this way, items within the search/rating datastore 352 may be searched based on the user that input a rating. Ratingsmay also be evaluated and feedback may be provided to the user thatinput the rating. For example, in one embodiment, a rating provider maybe able obtain feedback that their rating was used by another searchuser. When they look at a list result, they might be shown how manytimes their rating opinion were included in a search result provided toother users. Being able to see tangible impact of ones ratings mayenable the user to obtain positive feedback, which in turn may furtherencourage users to provide additional ratings. Associating a user totheir input also enables the invention to create and maintain a qualityof review validation for the inputs.

In addition, mass memory may include thesaurus 353 which is configuredto enable disambiguation. For example, where several terms may becombined into a single phrase, thesaurus 353 may provide such context.Moreover, where a term may be mean one thing within one geographicregion and mean another thing within another geographic region,thesaurus 353 may also include such information. Thus, for example,where “Trader Joe's” may refer to a store in one location, it may referto a restaurant in another location. Moreover, “TJs” may refer to“Trader Joe's” in one location, a clothing store in another location, ora bar/grill in yet another location. Such distinctions may be managedwithin thesaurus 353. Similarly, thesaurus 353 may also include commonlymisspellings, slang, or the like.

The mass memory also stores program code and data. One or moreapplications 350 are loaded into mass memory and run on operating system320. Examples of application programs may include transcoders,schedulers, calendars, database programs, word processing programs, HTTPprograms, customizable user interface programs, IPSec applications,encryption programs, security programs, SMS message servers, IM messageservers, email servers, account managers, and so forth. Universal Search& Rating Manager (USRM) 354 may also be included as an applicationprogram within applications 350.

USRM 354 is configured and arranged to manage modified searches orratings and reviews based in part on a user profile, and/or socialnetworking information to provide aggregated search rating results. USRM354 further enables a user to input universal ratings and/or commentsfor any of a variety of items, including, but not limited to products,services, businesses, or the like.

USRM 354 may provide an interface for a user to provide rating inputs,and allow searching of other's input lists, terms, or the like.Moreover, USRM 354 may enable the searches to be transparently, in oneembodiment, limited to the searcher's social network, geographicallocation, or based on information from the searcher's user profile.

USRM 354 may be arranged to provide the interface such that the user mayenter inputs in a free form. That is, in one embodiment, the user mayprovide input independent of a predetermined category. In oneembodiment, the interface may be configured to provide an input box forfree form entry of terms, phrases, comments, or the like. For example,in one embodiment, the user can compose, or otherwise provide and entervirtually any phrase into the free form input box. In one embodiment,the input box might be constrained to a limited number of words, lines,or the like. For example, in one embodiment, the input box might beconstrained to a single line phrase. However, the invention is not solimited, and the input box, might not be constrained in anotherembodiment. One embodiment of a possible interface is described in moredetail below in conjunction with FIG. 7.

In one embodiment, an initial analysis may be performed on the input todetermine whether there may be terms, phrases, or the like, to bedisambiguated. Such disambiguation may be transparently resolved, in oneembodiment, through use of the user's user profile, preferences, socialnetwork, or the like. In one embodiment, a current physical location mayalso be used to attempt to disambiguate the input. In one embodiment,USRM 354 may employ thesaurus 353 to assist in the disambiguation. Inone embodiment the disambiguation may be performed by requestingclarification from the user. For example, in one embodiment, a product,service, location, business, or other keyword might be requested fromthe user.

In one embodiment, the user may also be provided with buttons, dials,icons, or the like, to select a rating to be associated with the input.In one embodiment, the ratings may be in the form of stars; however, theinvention is not so constrained, and other visual rating structures maybe used. In one embodiment, a range for the ratings is pre-defined, andmay be from zero to some n value, such as five, or the like.

USRM 354 may also receive a search query from a user. The search querymay also be entered using a free form input box, form, or the like. Inone embodiment, the input box may be substantially similar to the freeform input box useable to receive text with ratings. In one embodiment,the search query may be transparently modified based, in part, on thesearcher's user profile, preferences, location, social network, or thelike. Ambiguities may similarly be resolved based on the user's profile,location, social network, preferences, or the like. In one embodiment,USRM 354 may request additional information from the searcher to assistin disambiguating any terms, phrases, or the like.

For example, a user may select to employ USRM 354 to enter a comment,such as “I think Trader Joe's organic ketchup is the best ever.” In oneembodiment, the user may provide a rating, such as five stars, or thelike. Where the phrase “Trader Joe's” may be interpreted as ambiguous,various information such as mentioned above, may be used to resolve theambiguity. When another person, such as the user's spouse, friend, orthe like, performs a free form search query for “ketchup,” thesearcher's social network's inputs to search/rating/review data store352 may be used to search for and provide results, such as:

Ketchup **** (10 reporting) Heinz ketchup **** (5 reporting) TraderJoe's organic ketchup ***** (5 reporting) Ketchup in barbecue sauce **(2 reporting) Safeway brand ketchup ** (2 reporting)

An entry of “Trader Joe's organic ketchup” would contribute to ratingsfor each word and each possible sub phrase in the text. A “10 reporting”might indicate how many reviews contributed to the score, to enable thesearcher to evaluate how much to believe a rating. In anotherembodiment, the searcher may select to revise the factors used to modifytheir search query. Thus, the searcher may select to enter a term tospecify a larger or smaller social networking group, such as family,friends, demographic, or even all, which might result in more globalsearch results. Similarly, the searcher might enter a differentlocation, or specify a business. For example, the searcher might alsoenter “Trader Joe's.” In this instance, in one embodiment, the searchresults might return rated entries related to “Trader Joe's.” Similarly,the searcher might select to perform the search within a particularcity, town, or the like, and exclude other search entries provided byusers from other areas.

USRM 354 may be configured to employ a variety of mechanisms in which toperform and provide to a searcher an aggregated rating response, basedon recognition that users may input their comments in free-form usingpotentially different terms to describe the same product/service. In oneembodiment, the contributions of a rated review may be distributedacross all reasonable sub phrases of an input. For example, in oneembodiment, for a string of words X of length N, a list of all possiblesub phrases may be generated for a given review. The review maycontribute to the aggregated rating for all sub phrases, in addition tothe entire string (review). The aggregated rating for a string of wordsY may then be determined by a weighted average of all ratings fromcontributing reviews, where the weight is a function of a fraction ofthe words in the sub phrase over the total number of words N in thecontributing review X. It should be clear however, that other algorithmsmay also be employed without departing from the scope of the invention.For example, in one embodiment the function may be determined based onempirical research. In any event, in one embodiment, phrases may bereturned for a particular query may be ranked by relevance to the query,how meaningful the phrase is, and/or an averaged rating.

To present one example, suppose an input review gave five stars for“Trader Joe's organic ketchup.” USRM 354 might employ thesaurus 353, thesearcher's current location, or the like, and recognize “Trader Joe's”as a single named entity. Thus, the following resulting weights might begenerated for sub-phrases in the review:

Trader Joe's 0.333 Trader Joe's organic 0.666 Organic ketchup 0.666Organic 0.333 Ketchup 0.333 Trader Joe's ketchup 0.666 Trader Joe'sorganic ketchup 1.000

The aggregated rating for “Trader Joe's” may then be a weighted averageof all contributing phrases from relevant reviews. For example, reviewssuch as “apples at Trader Joe's,” or “Trader Joe's enchilada,” or even“customer service at Trader Joe's is great,” may all contribute based onsimilar weightings to a result for a search query for “Trader Joe's.”

As another example, assume that a search seeks to know an overall ratingfor Trader Joe's. Further assume, for simplicity, that the followingthree rating comments are provided:

Trader Joe's rice rating: * Trader Joe's ketchup rating: ** Trader Joe'sbread rating: ***

In the above example, USRM 354 might again recognize that “Trader Joe's”as a single named entity, thus providing ½ to each of the weightedcomments. Thus, in one embodiment, to obtain a total rating, USRM 354might perform the following to obtain an average aggregated rating of:2=(½(1)+½(2)+½(3))/(1.5)

Clearly, the above is merely an example of one embodiment of a possiblemechanism for determining an aggregated weighted average rating. Itshould not be considered, however, as limiting the invention in anymanner and is merely provided to illustrate use of the invention. Thus,other algorithms may be employed without departing from the scope of theinvention. In any event, USRM 354 may employ processes such as describedbelow in conjunction with FIGS. 4-6.

Generalized Operation

The operation of certain aspects of the invention will now be describedwith respect to FIGS. 4-6. FIG. 4 illustrates a logical flow diagramgenerally showing one embodiment of an overview process for managingfree-form context based searches and ratings.

Process 400 of FIG. 4 begins, after a start block, at decision block402, where a determination is made whether the user of the aggregatedsearch query interface is a new user. That is, has the user provided auser profile, social networking information, or the like? Identificationof whether the user is a new user may be based on a variety of factors,including, without limit, a network address provided by the clientdevice being used by the user, an account identifier, name, alias, orthe like, that the user may provide, or any of a number of othermechanisms. For example, to employ the invention, in one embodiment, theuser might be asked to log into an account.

While the invention does not require such information, having suchinformation may enable transparent modifications of search queries toenable personalization of the search results. It may further enable theuser to quickly identify when their comments have been used by others.In any event, if the user is new, processing flows to block 404;otherwise, processing flows to decision block 406. It should be noted,however, that the user is not precluded from modifying user informationat any time; thus, although not illustrated, the user may also beprovided with a capability of selecting to modify their userinformation.

At block 404, user information may be obtained. Such information may beobtained using a variety of mechanisms, including having the user fillin a survey, provide results from another survey performed elsewhere,identify buddy lists, identify an account identifier, user name, or thelike, from which the process may obtained user information, or the like.As noted above, such user information includes, but is not limited touser profile information, preferences, social networking information, orthe like.

Processing proceeds next to decision block 406 where a determination ismade whether the user is to conduct a free-form search. If so,processing continues to block 408; otherwise, processing branches todecision block 410.

One embodiment of block 408 is described in more detail below inconjunction with FIG. 5. Briefly, however, the user may provide afree-form search query that enables the user to obtain results that areweighted based on universal aggregated ratings from a plurality ofusers.

Processing next continues to decision block 410, where a determinationis made whether the user is to provide a free-form rating on aproduct/service, business, or the like. If so, processing continues toblock 412; otherwise, processing may return to a calling process toperform other actions.

One embodiment of block 412 is described in more detail below inconjunction with FIG. 6. Briefly, however, at block 412, the user mayprovide their comments in a free-form context, using, for example, thefree-form entry screen described below in conjunction with FIG. 7.Processing then returns to a calling process to perform other actions.

FIG. 5 illustrates a logical flow diagram generally showing oneembodiment of an overview process for managing free-form context basedsearch queries. Process 500 of FIG. 5 illustrates one possibleembodiment of block 408 of process 400. However, the invention is not solimited, and other processes may also be employed.

Process 500 begins, after a start block, at block 502, where, ifavailable, a user's profile, social networking information, and thelike, may be obtained. In one embodiment, the user's profile, socialnetwork, and the like, may be obtained from a data store, based oninformation the user may have provided, or obtained through the user'spermission based on tracking a user's networking behaviors. In oneembodiment, the social networking information may be constrained to theuser's family, friends, or even based a variety of other degrees ofseparation. For example, in one embodiment, information about the user'scontacts, or the like, for first degree of separation relationships maybe obtained for use in modifying the search (and/or later a comment).

Processing continues next to block 504, where a current location of theuser may be determined. In one embodiment, the client device for whichthe user is using may provide such information. In one embodiment, theuser might be asked.

Process 500 continues next to block 506, where the user may provide infree-form a search query that includes one or more search terms.Processing flows next to decision block 508 where a determination ismade whether any of the terms may be ambiguous. If a term is determinedto be ambiguous, processing flows to block 520 where disambiguation maybe performed. In one embodiment, an attempt to disambiguate the term(s)may be performed based on the user's information, a thesaurus of knowndisambiguated terms for the user and/or similarly related users, or thelike. In one embodiment, the user's current location might be employedto attempt to disambiguate the term(s). For example, if the user iscurrently located in a Trader Joe's store, such location may be used todisambiguate a search term of “TJ's.” In any event, if disambiguation isnot readily determined, in one embodiment, the user might be asked toclarify the term(s).

Processing then continues to block 510, where the search query may befurther modified based, in part, on the user's profile, previous ratinginputs for a related product/service, or the like, the user's location,social network information, and/or disambiguations from block 520.

Process 500 continues next to block 512, where using the modified searchquery, processing continues to block 514, where the results of thesearch query may be returned with weighted aggregated ratings.

Continuing to decision block 516, a determination is made whether theuser is to tag the results with identifiers that may be useable toconstraint or focus future searches. If not, processing flows todecision block 518. If so, then processing flows to block 522 where theuser may input one or more user-defined tags for the results. Processingthen loops back to decision block 516 until the user determines that nomore tags are to be provided.

Processing proceeds to decision block 518 where a determination is madewhether the user is to conduct another search query. If so, processingloops back to block 506; otherwise, processing returns to a callingprocess to perform other actions.

FIG. 6 illustrates a logical flow diagram generally showing oneembodiment of a process for managing free-form context based ratings.

Process 600 of FIG. 6 begins, after a start block, at block 602, where,if available, a user's profile, social networking information, and thelike, may be obtained. In one embodiment, the user's profile, socialnetwork, and the like, may be obtained from a data store, based oninformation the user may have provided, or obtained through the user'spermission based on tracking a user's networking behaviors. Processingcontinues next to block 604, where a current location of the user may bedetermined. In one embodiment, the client device for which the user isusing may provide such information. In one embodiment, the user might beasked.

Process 600 continues next to block 606, where the user may provide infree-form comments about virtually any product, service, business, orthe like. In one embodiment, the user may employ a free-form interfacesuch as described below in conjunction with FIG. 7.

Processing flows next to decision block 608 where a determination ismade whether any of the terms may be ambiguous. If a term is determinedto be ambiguous, processing flows to block 520 where disambiguation maybe performed. In one embodiment, an attempt to disambiguate the term(s)may be performed based on the user's information, a thesaurus of knowndisambiguated terms for the user and/or similarly related users, or thelike. In one embodiment, the user's current location might be employedto attempt to disambiguate the term(s). In any event, if disambiguationis not readily determined, in one embodiment, the user might be asked toclarify the term(s).

Processing then continues to block 610, where the user may select arating. Processing then continues to block 612, where, in oneembodiment, an initial aggregation of the user's input may be performed.Such initial aggregation may be performed to provide computeefficiencies. However, block 612 is optional, and may be performed atvirtually any time, including, for example, when a search request isperformed, based on a predefined aggregation schedule, or the like. Inany event, processing proceeds to decision block 614 where adetermination is made whether the user is to input more comments. If so,processing branches back to block 606; otherwise, processing returns toa calling process.

It will be understood that each block of the flowchart illustration, andcombinations of blocks in the flowchart illustration, can be implementedby computer program instructions. These program instructions may beprovided to a processor to produce a machine, such that theinstructions, which execute on the processor, create means forimplementing the actions specified in the flowchart block or blocks. Thecomputer program instructions may be executed by a processor to cause aseries of operational steps to be performed by the processor to producea computer implemented process such that the instructions, which executeon the processor to provide steps for implementing the actions specifiedin the flowchart block or blocks. The computer program instructions mayalso cause at least some of the operational steps shown in the blocks ofthe flowchart to be performed in parallel. Moreover, some of the stepsmay also be performed across more than one processor, such as mightarise in a multi-processor computer system. In addition, one or moreblocks or combinations of blocks in the flowchart illustration may alsobe performed concurrently with other blocks or combinations of blocks,or even in a different sequence than illustrated without departing fromthe scope or spirit of the invention.

Accordingly, blocks of the flowchart illustration support combinationsof means for performing the specified actions, combinations of steps forperforming the specified actions and program instruction means forperforming the specified actions. It will also be understood that eachblock of the flowchart illustration, and combinations of blocks in theflowchart illustration, can be implemented by special purposehardware-based systems which perform the specified actions or steps, orcombinations of special purpose hardware and computer instructions.

Illustrative Screen Shot of Free-Form Input Box

FIG. 7 illustrates a screen shot of one embodiment of a possiblefree-form input box. Screen 700 may include many more or less componentsthan those shown. The components shown, however, are sufficient todisclose an illustrative embodiment for practicing the invention.

As shown, screen 700 includes a free-form input window 702, ratingselectors 704, disambiguators 706, and selectable constraints 708.

Free-form input window 702 represents one embodiment of a mechanism thatis configured to enable a user to input in a free-form search query orcomment terms. In one embodiment, window 702 may be configured toscroll, such that the user may provide several lines of terms. In oneembodiment, however, window 702 might be constrained to a single linesearch query or comment.

Rating selectors 704 may include radio dials, dials, thermometers, orany of a variety of other mechanisms to enable a user to input a ratingbased on a defined range of values. As shown, rating selector 704illustrates a star rating, however, the invention is not so constrained,and other rating expressions, icons, or the like, may also be used.Moreover, where the user selects not to provide a rating, the termsinput into window 702 might be automatically interpreted as searchterms. In one embodiment, however, another selector (not shown) might beprovided that enables the user to identify whether the input is a searchor a comment. Selection of the search might then, in one embodiment,dim, or otherwise disable rating selectors 704.

Disambiguators 706 illustrate one embodiment, of a mechanism forresolving ambiguous terms entered by the user. In one embodiment, wheredisambiguation might not be successful transparently to the user basedon user information, location, social network information, or the like,disambiguators 706 might provide the ambiguous terms, and requestclarification. As shown, in one embodiment, the user might select from alist of terms that might disambiguate the other terms. However, the usermight also provide into window 702 a term to enable disambiguation.

Selectable constraints 708 represent one possible mechanism to enablethe user to pro-actively constrain the search based on user information.As illustrated the user may select a category of user information for alist of categories, or provide additional information to constrain thesearch, comments, or the like.

The above specification, examples, and data provide a completedescription of the manufacture and use of the composition of theinvention. Since many embodiments of the invention can be made withoutdeparting from the spirit and scope of the invention, the inventionresides in the claims hereinafter appended.

1. A network device to manage a search query from a mobile device over anetwork, comprising: a transceiver to send and receive data over thenetwork; and a processor that is operative to perform actions,including: providing to a user a free-form input box; receiving socialnetworking information about the user; determining a current location ofthe user; receiving from the user a free-form search query; modifyingthe search query based in part on the social networking information, orthe current location of the user; performing the modified search query;and providing a search result having a plurality of results, each resultin the plurality of results including a weighted aggregated averagerating that is based on weighting of contributing phrases, includingsub-phrases, within relevant reviews, wherein the weighted aggregatedaverage rating further comprises determining a weighting based on afraction of words in a sub-phrase of words in the review over a totalnumber of words contributing to a review associated with the searchquery.
 2. The network device of claim 1, wherein receiving socialnetworking information further comprises: receiving at least one of auser preference profile, or information about the user's friends,family, or at least their first degree of separation contacts.
 3. Thenetwork device of claim 1, wherein modifying the search query furthercomprises: if at least one word within the search query is ambiguous,attempting to disambiguate the term based in part on the socialnetworking information and the current location of the user.
 4. Thenetwork device of claim 1, wherein the processor is operative to performactions, further including: enabling the user to select at least oneadditional social networking constraint, wherein the additional socialnetworking constraint is employable to further modify the search query.5. The network device of claim 1, wherein the processor is operative toperform actions, further including: receiving from the user a free-forminput of comments about at least one of a product, service, or business;performing disambiguation on the comments based in part on the currentlocation and social networking information; and receiving a universalrating associated with the comments from the user.
 6. A system that isoperative to manage a search query over a network, comprising: a datastore configured to receive and manage user profiles and user socialnetworking information; and a universal search and rating manager thatis in communication with the data store and is configured and arrangedto perform actions, including: receiving an identifier of a user;employing the identifier to retrieve information about the user from thedata store, including a user profile and user social networkinginformation; determining a current location of the user; receiving fromthe user a free-form search query; modifying the search query based inpart on the social networking information, and the current location ofthe user; performing the modified search query; and providing a searchresult having a plurality of results, each result in the plurality ofresults including a weighted aggregated average rating that is based onweighting of contributing phrases, including sub-phrases, withinrelevant reviews, wherein the weighted aggregated average rating furthercomprises determining a weighting based on a fraction of words in asub-phrase of words in the review over a total number of wordscontributing to a review associated with the search query.
 7. The systemof claim 6, wherein at least some of the social networking informationis determined based on tracking an activity of the user over a network.8. The system of claim 6, wherein modifying the search query furthercomprises: if at least one word within the search query is ambiguous,attempting to disambiguate the term based in part on the socialnetworking information and the current location of the user.
 9. Thesystem of claim 6, wherein the universal search and rating manager isconfigured to further perform actions, including: receiving from theuser a free-form input of comments about at least one of a product,service, or business; performing disambiguation on the comments based inpart on the user's current location and user's social networkinginformation; and receiving a universal rating associated with thecomments from the user.
 10. A non-transitory, computer-readable storagemedium having computer-executable instructions for managing a universalratings over a network, the computer-executable instructions wheninstalled onto a computing device enable the computing device to performactions, comprising: receiving from a user a user's profile, and user'ssocial networking information; determining a current location of theuser; receiving from the user a free-form comment about at least oneitem of interest, wherein the comment includes at least one sub-phrasecomprising one or more terms; performing disambiguation on the commentsbased in part on the user's current location and user's socialnetworking information; receiving a universal rating associated with thecomments from the user; and determining a weighting for each sub-phrasewithin a comment based on a fraction of terms in each sub-phrase of oneor more terms, in addition to the entire comment, over a total number ofterms contributing to the comment, wherein the weighting furthercomprises determining a weighting based on a fraction of words in asub-phrase of words in the comment over a total number of wordscontributing to the comment terms.
 11. The non-transitory,computer-readable storage medium of claim 10, wherein the computingdevice performs actions, further comprising: receiving from the user afree-form search query; modifying the search query based in part on theuser's social networking information, and the current location of theuser; performing the modified search query; and providing a searchresult having a plurality of results, each result in the plurality ofresults including a weighted aggregated average rating based in part onthe sub-phrase weightings of comments.
 12. The non-transitory,computer-readable storage medium of claim 10, wherein performingdisambiguation further comprises, enabling the user to provide at leastone social networking constraint to further attempt to disambiguate thecomment.
 13. The non-transitory, computer-readable storage medium ofclaim 10, wherein the user is enabled to further provide a tag to atleast one search result, wherein the search result comprises weightedaverage ratings for at least one other sub-phrase aggregated from aplurality of users' comments.
 14. The non-transitory, computer-readablestorage medium of claim 10, wherein receiving the universal ratingfurther comprises identifying the received rating with the user.
 15. Amethod, operating within a processor, of performing a search query overa network, comprising: receiving social networking information about auser; determining a current location of the user; receiving from theuser a free-form search query; modifying the search query based in parton the social networking information, or the current location of theuser; performing the modified search query; and providing a searchresult having a plurality of results, each result in the plurality ofresults including a weighted aggregated average rating that is based onweighting of contributing phrases, including sub-phrases, withinrelevant reviews, wherein the weighted aggregated average rating furthercomprises determining a weighting based on a fraction of words in asub-phrase of words in the review over a total number of wordscontributing to a review associated with the search query.
 16. Themethod of claim 15, the method further comprising: receiving from theuser a free-form input of comments about at least one of a product,service, or business; performing disambiguation on the comments based inpart on the user's current location and user's social networkinginformation; and receiving a universal rating associated with thecomments from the user.
 17. The method of claim 15, wherein receivingsocial networking information further comprises having the user provideinformation within a survey.
 18. The method of claim 15, whereinmodifying the search query further comprises constraining the results ofthe search query to results based in part on input comments into asearch data store from other users within a defined degree of separationfrom the user.
 19. The method of claim 15, further comprising acomputer-readable storage medium having stored thereon programinstructions for performing the method of claim 15.